Repository navigation
docs(apply): build ids are checked before anything is applied - #186
Merged
Merged
Conversation
Documents forge-cli #803: under --mode amend-and-build or replace-and-build, fluid apply checks id and every builds[].id against the build phase's rule before the apply hooks, tofu and any build, and refuses with apply_build_identifier_invalid. Adds a Build ids subsection and an errors-table row to cli/apply.md, and a bullet to upgrading.md.
This branch was previously deployed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Documents forge-cli #803 (open). Under
--mode amend-and-buildorreplace-and-build,fluid applynow checksidand everybuilds[].idagainst the build phase's rule, right after the schema check. The check runs before the apply hooks,tofuand any build. A bad id is refused withapply_build_identifier_invalid.Before this, such an id (
1orders, or one longer than 128 characters) passedfluid validate. On the OpenTofu engine the product was provisioned first, and the build runner then refused the id as "Unexpected error".forge-cli #803 is on main (squash-merged as
87559062, 2026-11-03), so the "onmain" wording is now true and this is ready to merge.e7f60572. The final head,6b3cdadb, only changed an import in the test file, so the documented behaviour and output are unchanged.main, not yet in a release" markers become "since X.Y.Z".fluid validateandfluid planwarn about such ids (validate --strictfails on the warning). It should also update the sentence that says they pass1orders.Related CLI PR
Areas Updated
docs/cli/apply.mdgets a "Build ids" subsection under Contract validation, with the rule, a real output block and what changed, plus a row in "Errors you can hit".docs/upgrading.mdunder "On forge-climainsince 0.26.0". It covers what to do (rename the id), and that a renamedidgets a new.fluid/iac/<provider>/<id>workdir and starts its builds without their cursors and watermarks.Checklist
npm run docs:devor built it withnpm run docs:buildNotes
fluid applyrun of the #803 branch. It is the full refusal as printed, suggestions included.data-product-forge==0.26.0on Python 3.11, as CI does, and all pass.check_cli_docs.py, its--version-onlyand--markers-onlymodes,check_providers.pyandgen_contract_reference.py --check.npm run docs:build, thenscripts/check-dist-links.mjs: clean over 244 pages. The#build-idsanchor is in the builtcli/apply.html.lychee --offlineover the two pages: no new errors. The only 3 errors are existing root-relative links atapply.md:660-662, which CI resolves with its staged root dir.